#include <iostream>
using namespace std;
using DWORD=int;
using FP=void(*)(int);
template <typename T>
class Point{
  T x, y;
};
template <typename T>
using PT=Point<T>;
template <typename T, typename U>
using Duo=pair<T, U>;
template <typename T>
using I_Duo=pair<int, T>;
template <typename T>
using remove_pointer_t=typename remove_pointer<T>::type;
int main(void){
  DWORD n;    
  FP p;   
  
  Point<int> p1;
  PT<int> p2;
  I_Duo<int> p3;
  p3.first=10;
  p3.second=10;
  cout<<p3.first<<" "<<p3.second<<endl;
  
  return 0;
}